Inertial sensors (e.g. accelerometers and gyroscopes) are commonly used for tracking human movements especially for “on foot” activities (for example walking or running). Accelerometers are used for measuring a user's acceleration, from which steps can be detected and can form the basis of existing step length estimation techniques.
For on foot motion (for example walking or running), there are many methods known in literature for estimating step length. The easiest and most trivial assumption (but not accurate) is that the step length is a constant value regardless of the pedestrian characteristics like height, weight, and gender, or motion dynamics (for example walking or running speed and acceleration).
Some methods require the placement of inertial sensors on certain locations on the user's body (for example, on a foot, waist or chest . . . etc.), which again make it hard to apply these methods for a variety of applications except those supporting the location for which the method was built.
One method for step length calculation is the double integration of acceleration readings to obtain pedestrian displacement. This method, if used alone, results in lower accuracy due to the drift increasing over time and the high noise and errors in commercial accelerometer readings especially for cases with low acceleration values. The common technique to enable using this method is to restart the integration with each detected step because the velocity is zero at each footfall. This is why this technique prefers foot mounting or lower leg mounting, to avoid the body sway as this technique needs a zero velocity update at each step detection.
Other known methods may be categorized roughly into two main groups, namely methods based on biomechanical models, and methods based on empirical relationships. An example of a biomechanical model method is kneeless biped model for step length estimation, wherein, the kneeless biped is modeled as an inverted pendulum and the final estimation is scaled with some constant dependent on the user. One drawback of this method is that it is user-dependent since for this method to work properly, one must find the best scale constant for each specific user.
As another example, a biomechanical model method can assume a more complex model by considering the vertical displacement of the center of mass of the user's body through double integration of the acceleration ruled by two pendulums, namely, an inverted pendulum with the leg's length during the swing phase, and a second pendulum, during the double-stance phase of the step known as the stride length (where stride length is defined as the length of two consecutive steps). In this case, the method can be computed as the summation of the displacements in both stages. One drawback of this method is that it requires the knowledge of the foot length (from first metatarsal head to the calcaneal tuberosity) of the user, which makes it again, user-dependent/specific, and certain configurations may work with one user but not with another user because of differences in their physical characteristics like height and/or leg-to-body ratio. The same problem again appears in the empirical relationships, where one or more parameters require calibration and customization for each user. Another example of these methods is a method that develops a relationship between the stride length, the step counter, the first harmonic of the vertical acceleration of the center of mass of the person, and a constant that needs calibration. There are several other empirical methods, in some of which the equations are obtained experimentally and need calibration of parameters.
Some prior work noted that the speed of a moving pedestrian can affect his step length, for example when a person walks faster he tends to increase the length of his step; also his motion style and dynamics are affected by his increased speed. A related parameter is that the step frequency affects the step length.
In some prior work it was assumed that the step length has a linear relation with the step frequency, where step frequency indicates how many steps are detected per second. The results of this method as is are not satisfactory for applications that requires accurate varying step length estimation, as the frequency of step is not the only parameter that can affect the step length. Another technique is used to estimate step length and it is considered a modification to the previous approach that only considered the step frequency in a linear relation with step length. In this approach a linear model can be used to relate the step length with both step frequency and acceleration variance in a step where acceleration variance is the variance of the acceleration measured by the accelerometer during one step period. The parameters of the previously mentioned linear models are obtained either by online training when a GNSS signal is available or by offline training before the model is used by the user. The main drawback of online training is that the model requires training with different walking or running speeds, which is not guaranteed and most probably will not happen in a natural real-life trajectory during GNSS availability. This issue is solved in implementations which involve offline training instead, in which training data is collected before usage. The results are shown experimentally to be better than the online training implementations. In implementations that are using offline training the parameters of the linear model can be calculated using any linear identification method such as linear regression. Different users should walk with different speeds so that different values of frequency and acceleration variance can be obtained. These values can be fed to the linear regression model to calculate approximate parameters that suit a large number of users.
The main drawback in the last mentioned approach is the assumption of linear relation, which neglects the effect of some motion dynamics and speeds that differ among users and can cause the relation to be nonlinear.
Thus there is a need for a method and system capable of mitigating such problems by being able to build and/or use nonlinear model(s) for the step length as a function of the parameters representing human motion dynamics.